Basic authentication access control systems for use with networked computer systems have fallen into disfavor in years past due to the ability of eavesdroppers to acquire passwords with a packet sniffer during the authorization process and later access the networked system with the stolen password. Specifically, a packet sniffer is a wire-tap device that plugs into computer networks and/or receives wireless transmissions, and eavesdrops on the network traffic. Unlike most other network devices that discard packets not addressed to them, the packet sniffer acts like a router to pick up all packets. Protocol analysis then allows it to decode the seemingly random bits of data, remove the addressing labels, and examine the contents. The persistent existence of sniffing technology has, thus, motivated a move toward access control systems with improved ability to thwart eavesdroppers.
Attempts by others to address the problems related to providing access control systems resistant to eavesdroppers have led to the development of Certificated Authorities (CA), which have become the self-lauded, self-proclaimed standard for client-host access control and authorization procedures. Specifically, a trusted third party acts like a notary using a digital signature to issue a certificate containing a public key stated to have a certain value. The recipient of the certificate decrypts the signature using the CA's public key and the algorithm the CA used to perform the encryption, computes a message digest of the certificate contents using the same algorithm used by the CA, and performs a comparison between the computed message digest and the one accompanying the certificate. A match means that the contents of the certificate have not been tampered with, and that the certificate was indeed signed by the CA. Also, based on the trust placed in the CA, the recipient determines that the public key presented in the certificate really belongs to the person named in the certificate. Unfortunately, CAs do not perform this service free of charge, and use of these authorities introduces increased expense compared to password-based systems.
In addition to increased expense, the identification process required for using these certificates can slow down the authorization process significantly. Secure Sockets Layer (SSL), for example, provides a security “handshake” using public-key cryptography for mutual identification and to uniquely generate and exchange a session key. First, the client challenges the server and transmits its choice of encryption algorithms. Second, the server returns its server certificate with an acknowledgement that it can support the algorithms chosen by the client and generates a random connection identifier. Third, the client verifies the server certificate and generates the master session key for generating client and server communication keys, encrypts the master key with the server public key, and transmits it to the server. Fourth, the server decrypts the master session key with its private server key, uses the session key to create the corresponding server key pairs, encrypts the initial client challenge phrase with the server-write key, and returns the encrypted phrase to the client. Fifth, the server requests that the client present a valid client certificate, sending the new challenge with the server-write key, and the client responds with a phrase consisting of 1) a hash of the server challenge phrase plus the client certificate, and 2) the client certificate. The phrase is digitally signed with the client's private key, and the handshake is complete.
Needless to say, all of these encryption and exchange procedures slow down the authorization process, and the degree to which the process is slowed down can have an enormous effect on speed of a server system that frequently initiates and drops connections, such as a Storage Area Network (SAN). In a SAN, for example, the speed of access of a client's stored data can be primarily dependent on the speed of the access control. In addition, the expense involved in using a trusted third party represents an additional burden. Thus, it remains the task of the present invention to provide an identification confirmation system and method for use with a networked computer system that thwarts eavesdroppers without the expense or sacrifice of speed associated with using a third party.